# -*- encoding:utf-8 -*-
"""
@作者：ven
@文件名：main.py
@时间：2021-08-11  17:04
@文档说明:
"""

import PySimpleGUI as sg

# 创建布局
import pytest

from common.Log import Log

from utils.OperationYaml import YamlUtil

layout = [
    [sg.Text('服务器IP'), sg.Input(key='_IP_')],
    [sg.Text('数据库名称'), sg.Input(key='_DB_')],
    [sg.Text('考勤设备序列号'), sg.Input(key='_SN_')],
    [sg.Btn('START', key='_START_')]
]

# 创建窗口，引入布局，并进行初始化
# 创建时，必须要有一个名称，这个名称会显示在窗口上
window = sg.Window('识别记录上传', layout=layout, finalize=True)

while True:  # 创建一个事件循环，否则窗口运行一次就会被关闭
    event, value = window.Read()  # event, value 的值分别是 _LOGIN_ {'_USER_': 'admin', '_PWD_': '123'}
    # print(event, value)  # 可以打印一下看看变量的内容
    if event is None:  # 如果事件的值为 None，表示点击了右上角的关闭按钮
        break
    if event == '_START_':  # 当获取到事件时，处理逻辑
        ip = value['_IP_']
        db = value['_DB_']
        sn = value['_SN_']
    # if ip == "":
    #     sg.popup('IP不能为空', text_color='red')
    # if db == "":
    #     sg.popup('数据库名不能为空', text_color='red')
    # if sn == "":
    #     sg.popup('设备序列号不能为空', text_color='red')

    # 修改yaml文件
    data = {
        "sn":sn,
        "db":db,
        "ip": "http://%s:8989"%ip,
        "host":ip
    }
    #YamlUtil('config', 'config_user.yaml').clear_yaml(data)

    Log().log().info('数据上传开始...')

    pytest.main(['-s', '-v', '../test_case/test_record.py'])